class SWelderWFireB extends SWelderWFire;

function DoFireEffect()
{
	Super.DoFireEffect();
	//Log(Instigator.OwnerName@"used WTFEquipWelda to unweld");
}

function bool AllowFire()
{
	local KFDoorMover WeldTarget;

	//Log(Instigator.OwnerName$" is unwelding with S Welder");
	WeldTarget = KFDoorMover(Super.GetTarget());
	if(WeldTarget != none && WeldTarget.WeldStrength <= 0)
		return false;
	// Can't use welder, if no door.
	if ( WeldTarget == none && !CanFindHealee())
	{
		if ( KFPlayerController(Instigator.Controller) != none )
		{
			KFPlayerController(Instigator.Controller).CheckForHint(54);

			if ( FailTime + 0.5 < Level.TimeSeconds )
			{
				PlayerController(Instigator.Controller).ClientMessage(NoWeldTargetMessage, 'CriticalEvent');
				FailTime = Level.TimeSeconds;
			}

		}
		return false;
	}
	if(WeldTarget != none && WeldTarget.bDisallowWeld)
	{
		if( PlayerController(Instigator.controller)!=None )
			PlayerController(Instigator.controller).ClientMessage(CantWeldTargetMessage, 'CriticalEvent');

		return false;
	}
	return Weapon.AmmoAmount(ThisModeNum) >= AmmoPerFire ;
}

defaultproperties
{
     MeleeDamage=15
     hitDamageClass=Class'KFMod.DamTypeUnWeld'
     AmmoPerFire=15
}
